1. Field of the Invention
The present invention is generally in the field of memory systems and devices. More particularly, the present invention is in the field of content-addressable memory (CAM) systems and devices.
2. Background Art
Many computer-based technologies rely on high speed access to data storage in order to create as interactive an experience as possible. In an environment where data sets are growing significantly larger, merely relying on larger designed bandwidths and higher bus and processor frequencies has diminishing returns. As a result, methods to reduce monolithic processor usage and data bus bandwidth requirements have been developed over time. One example method is the use of content-addressable memory (CAM) in order to speed up and offload search processes from conventional processors and data buses.
CAM is a type of memory that can take an input search word or series of bits, compare it against each and every entry within the CAM, and output a match location, all subject to a single clock cycle throughput. A CAM system improves high speed processing in at least two ways: first, it can perform an exhaustive search very quickly, and second, it may obviate a need to transfer a large data set to and from a memory array in order to perform a conventional search using, for example, a conventional monolithic processor. In the most basic case, where a data set is already resident in the CAM system and may be used for multiple searches, the only data bus bandwidth required is the bandwidth used to designate the search word to the CAM system initially and the bandwidth used to return a result. Even where a new data set must be transferred into a CAM system before each search, the high speed search of a CAM system typically makes up for any time spent on data transfer. As such, CAM systems are often preferred for applications benefitting from high speed searches, such as parametric curve extraction, media encoding/decoding, and internet protocol (IP) packet classification and forwarding, as examples.
However, a major drawback of conventional CAM systems is that in order to provide their high speed search results, the entire CAM array is typically powered and operational, which makes conventional CAM systems relatively expensive to use due to high power consumption and the on-chip space used to provide such power.
Thus, there is a need to overcome the drawbacks and deficiencies in the art by providing a compact and inexpensive system for reducing power consumption by a CAM.